Merhaba Ferhat,
Öncelikle yapman gereken şeyleri adım adım yazıyorum.
1. Volley sınıfını mutlaka incele.
Yukarıda ki gibi projenden build.gradle içerisine giriyorsun sonra;
Yukarıda ki şekilde aşağıdaki kodu ekliyorsun;
compile 'com.mcxiaoke.volley:library:1.0.19'
Bu kodu ekledikten sonra;
Kırmızı daire içine aldığım butona basıyorsun işlem tamamlandıktan sonra.
Activity dosyanda;
public String ResimURL = "";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.home_activity);
RequestQueue queue = Volley.newRequestQueue(getApplicationContext());
JsonObjectRequest request = new JsonObjectRequest(
"json.txt",
null,
new Response.Listener<JSONObject>() {
@Override
public void onResponse(JSONObject jsonObject) {
try {
JSONArray values = jsonObject.getJSONArray("sonuc");
for (int i = 0; i < values.length(); i++) {
JSONObject sonuc = values.getJSONObject(i);
ResimURL = sonuc.getString("url");
Log.v("SONUÇ", ResimURL);
}
} catch (JSONException hata) {
Log.v("HATA", hata.getMessage());
}
}
},
new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError volleyError) {
Toast.makeText(getBaseContext(), "Unable to fetch data: " + volleyError.getMessage(), Toast.LENGTH_SHORT).show();
}
});
request.setRetryPolicy(new DefaultRetryPolicy(20 * 1000, 1, 1.0f));
queue.add(request);
}
Yukarıda ki şekilde txt dosyanın içinde ki veriyi çekebilirsin ama bunu url.json dosyası olarak yapıp neslerinide json olarak alırsan java tarafında daha çok işin kolaylaşacaktır gelen json datasını for ile dönerek istediğin url yi daha kolay yakalayabilirsin.
Json örneği de aşağıda,
{
"sonuc": [
{
"url": "resim1.jpg",
"url": "resim2.jpg",
"url": "resim3.jpg"
}
]
}
1. Activity üzerinden 2.Activity üzerine veri aktarımı için;
Bundle extras = new Bundle();
extras.putString("resimUrl", "resimURL");
Intent intent = new Intent();
intent.putExtras(extras);
intent.setClass(getApplicationContext(), Second.class);
startActivity(intent);
2. Activity üzerinde 1.Aktivityden gelen değerleri okumak için ise;
private Bundle extras = null;
private String ResimURL = null;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.second);
init();
}
private void init() {
extras = getIntent().getExtras();
ResimUrl = extras.getString("resimURL");
}
Umarım açıklayıcı olmuştur dostum :)
İyi çalışmalar.